FIG. 1 depicts telecommunications system 100 in the prior art. System 100 comprises telecommunications network 101; client endpoints 102-1 through 102-H, wherein H is a positive integer; and servers 103-1 through 103-L, wherein L is a positive integer. The elements of system 100 are interconnected as shown. System 100 enables calls, via network 101, between endpoints 102-1 through 102-H and servers 103-1 through 103-L. Network 101 comprises one or more of the Internet, the Public Switched Telephone Network (PSTN), a local area network (LAN), and so forth.
Client endpoints 102-1 through 102-H are telecommunications devices such as an Internet-protocol telephone, a notebook computer, a personal digital assistant (PDA), a tablet computer, and so forth. Each endpoint is capable of originating outgoing calls and receiving incoming calls, in well-known fashion. In addition, each endpoint is capable of one or more communication modes that comprise but are not limited to voice, video, data, email, and instant messaging.
Servers 103-1 through 103-L are data-processing systems that handle telecommunications features that can be subscribed to by the endpoints. The servers are capable of handling features such as voice calling, video streaming, data retrieval, email, instant messaging, availability and presence monitoring, and so forth.
Telecommunications system 100 operates in accordance with the Session Initiation Protocol (SIP), a set of standardized communication rules for initiating and maintaining communication for telephony, presence-based systems, instant messaging, and other telecommunications applications. The increasing use of SIP-based systems represents a fundamental shift in telecommunications, in which a user can be addressed as a logical entity that might possess one or more devices, with each device going in and out of service based on the usage patterns of the user.
As new telecommunications features are built onto the SIP infrastructure, issues are emerging that affect performance throughout telecommunications system 100 and, in particular, servers 103-1 through 103-L. One such issue is an increase in network traffic. For example, as features that are related to monitoring the client endpoints are introduced at a centralized server that also handles call processing, the number of SIP-related events that the server must handle also increases, and consequently the server's capacity to process calls becomes severely degraded.
In some techniques in the prior art, the scalability issue that arises in a centralized server architecture is partially mitigated by partitioning the client endpoint users across multiple servers. Doing so, however, often has the effect of spreading out the call processing-related resource utilization, but not necessarily the SIP events-related utilization. Consequently, there are various issues with the centralized server architecture in the long run that are related to diminishing scalability, increasing complexity of the centralized server, and increasing complexity of feature development.
Moreover, as systems evolve in which the constituent endpoints migrate out into the Internet Protocol network and become relatively autonomous, the centralized server loses its complete authority over the control of the migrated endpoints. Often, as is the case with a SIP-based system, the server might not even have an active connection to an endpoint. This causes the initialization sequence between server and endpoint to be more intensive than before and requires an increased amount of bandwidth as each endpoint executes potentially numerous, different message sequences to fully initialize. Consequently, the time to service as perceived by an endpoint user can become unacceptably long.
What is needed is a way to mitigate the server scalability and time-to-service issues, without some of the disadvantages in the prior art.